package com.zhongwang.mms.gen.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class AccToolExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public AccToolExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andToolIdIsNull() {
            addCriterion("tool_id is null");
            return (Criteria) this;
        }

        public Criteria andToolIdIsNotNull() {
            addCriterion("tool_id is not null");
            return (Criteria) this;
        }

        public Criteria andToolIdEqualTo(Integer value) {
            addCriterion("tool_id =", value, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdNotEqualTo(Integer value) {
            addCriterion("tool_id <>", value, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdGreaterThan(Integer value) {
            addCriterion("tool_id >", value, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("tool_id >=", value, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdLessThan(Integer value) {
            addCriterion("tool_id <", value, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdLessThanOrEqualTo(Integer value) {
            addCriterion("tool_id <=", value, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdIn(List<Integer> values) {
            addCriterion("tool_id in", values, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdNotIn(List<Integer> values) {
            addCriterion("tool_id not in", values, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdBetween(Integer value1, Integer value2) {
            addCriterion("tool_id between", value1, value2, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolIdNotBetween(Integer value1, Integer value2) {
            addCriterion("tool_id not between", value1, value2, "toolId");
            return (Criteria) this;
        }

        public Criteria andToolNameIsNull() {
            addCriterion("tool_name is null");
            return (Criteria) this;
        }

        public Criteria andToolNameIsNotNull() {
            addCriterion("tool_name is not null");
            return (Criteria) this;
        }

        public Criteria andToolNameEqualTo(String value) {
            addCriterion("tool_name =", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameNotEqualTo(String value) {
            addCriterion("tool_name <>", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameGreaterThan(String value) {
            addCriterion("tool_name >", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameGreaterThanOrEqualTo(String value) {
            addCriterion("tool_name >=", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameLessThan(String value) {
            addCriterion("tool_name <", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameLessThanOrEqualTo(String value) {
            addCriterion("tool_name <=", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameLike(String value) {
            addCriterion("tool_name like", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameNotLike(String value) {
            addCriterion("tool_name not like", value, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameIn(List<String> values) {
            addCriterion("tool_name in", values, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameNotIn(List<String> values) {
            addCriterion("tool_name not in", values, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameBetween(String value1, String value2) {
            addCriterion("tool_name between", value1, value2, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolNameNotBetween(String value1, String value2) {
            addCriterion("tool_name not between", value1, value2, "toolName");
            return (Criteria) this;
        }

        public Criteria andToolSatIsNull() {
            addCriterion("tool_sat is null");
            return (Criteria) this;
        }

        public Criteria andToolSatIsNotNull() {
            addCriterion("tool_sat is not null");
            return (Criteria) this;
        }

        public Criteria andToolSatEqualTo(String value) {
            addCriterion("tool_sat =", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatNotEqualTo(String value) {
            addCriterion("tool_sat <>", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatGreaterThan(String value) {
            addCriterion("tool_sat >", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatGreaterThanOrEqualTo(String value) {
            addCriterion("tool_sat >=", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatLessThan(String value) {
            addCriterion("tool_sat <", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatLessThanOrEqualTo(String value) {
            addCriterion("tool_sat <=", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatLike(String value) {
            addCriterion("tool_sat like", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatNotLike(String value) {
            addCriterion("tool_sat not like", value, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatIn(List<String> values) {
            addCriterion("tool_sat in", values, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatNotIn(List<String> values) {
            addCriterion("tool_sat not in", values, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatBetween(String value1, String value2) {
            addCriterion("tool_sat between", value1, value2, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolSatNotBetween(String value1, String value2) {
            addCriterion("tool_sat not between", value1, value2, "toolSat");
            return (Criteria) this;
        }

        public Criteria andToolNumIsNull() {
            addCriterion("tool_num is null");
            return (Criteria) this;
        }

        public Criteria andToolNumIsNotNull() {
            addCriterion("tool_num is not null");
            return (Criteria) this;
        }

        public Criteria andToolNumEqualTo(String value) {
            addCriterion("tool_num =", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumNotEqualTo(String value) {
            addCriterion("tool_num <>", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumGreaterThan(String value) {
            addCriterion("tool_num >", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumGreaterThanOrEqualTo(String value) {
            addCriterion("tool_num >=", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumLessThan(String value) {
            addCriterion("tool_num <", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumLessThanOrEqualTo(String value) {
            addCriterion("tool_num <=", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumLike(String value) {
            addCriterion("tool_num like", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumNotLike(String value) {
            addCriterion("tool_num not like", value, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumIn(List<String> values) {
            addCriterion("tool_num in", values, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumNotIn(List<String> values) {
            addCriterion("tool_num not in", values, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumBetween(String value1, String value2) {
            addCriterion("tool_num between", value1, value2, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolNumNotBetween(String value1, String value2) {
            addCriterion("tool_num not between", value1, value2, "toolNum");
            return (Criteria) this;
        }

        public Criteria andToolBraIsNull() {
            addCriterion("tool_bra is null");
            return (Criteria) this;
        }

        public Criteria andToolBraIsNotNull() {
            addCriterion("tool_bra is not null");
            return (Criteria) this;
        }

        public Criteria andToolBraEqualTo(String value) {
            addCriterion("tool_bra =", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraNotEqualTo(String value) {
            addCriterion("tool_bra <>", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraGreaterThan(String value) {
            addCriterion("tool_bra >", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraGreaterThanOrEqualTo(String value) {
            addCriterion("tool_bra >=", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraLessThan(String value) {
            addCriterion("tool_bra <", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraLessThanOrEqualTo(String value) {
            addCriterion("tool_bra <=", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraLike(String value) {
            addCriterion("tool_bra like", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraNotLike(String value) {
            addCriterion("tool_bra not like", value, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraIn(List<String> values) {
            addCriterion("tool_bra in", values, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraNotIn(List<String> values) {
            addCriterion("tool_bra not in", values, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraBetween(String value1, String value2) {
            addCriterion("tool_bra between", value1, value2, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolBraNotBetween(String value1, String value2) {
            addCriterion("tool_bra not between", value1, value2, "toolBra");
            return (Criteria) this;
        }

        public Criteria andToolProDateIsNull() {
            addCriterion("tool_pro_date is null");
            return (Criteria) this;
        }

        public Criteria andToolProDateIsNotNull() {
            addCriterion("tool_pro_date is not null");
            return (Criteria) this;
        }

        public Criteria andToolProDateEqualTo(String value) {
            addCriterion("tool_pro_date =", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateNotEqualTo(String value) {
            addCriterion("tool_pro_date <>", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateGreaterThan(String value) {
            addCriterion("tool_pro_date >", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateGreaterThanOrEqualTo(String value) {
            addCriterion("tool_pro_date >=", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateLessThan(String value) {
            addCriterion("tool_pro_date <", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateLessThanOrEqualTo(String value) {
            addCriterion("tool_pro_date <=", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateLike(String value) {
            addCriterion("tool_pro_date like", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateNotLike(String value) {
            addCriterion("tool_pro_date not like", value, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateIn(List<String> values) {
            addCriterion("tool_pro_date in", values, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateNotIn(List<String> values) {
            addCriterion("tool_pro_date not in", values, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateBetween(String value1, String value2) {
            addCriterion("tool_pro_date between", value1, value2, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolProDateNotBetween(String value1, String value2) {
            addCriterion("tool_pro_date not between", value1, value2, "toolProDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateIsNull() {
            addCriterion("tool_col_date is null");
            return (Criteria) this;
        }

        public Criteria andToolColDateIsNotNull() {
            addCriterion("tool_col_date is not null");
            return (Criteria) this;
        }

        public Criteria andToolColDateEqualTo(String value) {
            addCriterion("tool_col_date =", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateNotEqualTo(String value) {
            addCriterion("tool_col_date <>", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateGreaterThan(String value) {
            addCriterion("tool_col_date >", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateGreaterThanOrEqualTo(String value) {
            addCriterion("tool_col_date >=", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateLessThan(String value) {
            addCriterion("tool_col_date <", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateLessThanOrEqualTo(String value) {
            addCriterion("tool_col_date <=", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateLike(String value) {
            addCriterion("tool_col_date like", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateNotLike(String value) {
            addCriterion("tool_col_date not like", value, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateIn(List<String> values) {
            addCriterion("tool_col_date in", values, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateNotIn(List<String> values) {
            addCriterion("tool_col_date not in", values, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateBetween(String value1, String value2) {
            addCriterion("tool_col_date between", value1, value2, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolColDateNotBetween(String value1, String value2) {
            addCriterion("tool_col_date not between", value1, value2, "toolColDate");
            return (Criteria) this;
        }

        public Criteria andToolPurIsNull() {
            addCriterion("tool_pur is null");
            return (Criteria) this;
        }

        public Criteria andToolPurIsNotNull() {
            addCriterion("tool_pur is not null");
            return (Criteria) this;
        }

        public Criteria andToolPurEqualTo(String value) {
            addCriterion("tool_pur =", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurNotEqualTo(String value) {
            addCriterion("tool_pur <>", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurGreaterThan(String value) {
            addCriterion("tool_pur >", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurGreaterThanOrEqualTo(String value) {
            addCriterion("tool_pur >=", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurLessThan(String value) {
            addCriterion("tool_pur <", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurLessThanOrEqualTo(String value) {
            addCriterion("tool_pur <=", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurLike(String value) {
            addCriterion("tool_pur like", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurNotLike(String value) {
            addCriterion("tool_pur not like", value, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurIn(List<String> values) {
            addCriterion("tool_pur in", values, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurNotIn(List<String> values) {
            addCriterion("tool_pur not in", values, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurBetween(String value1, String value2) {
            addCriterion("tool_pur between", value1, value2, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolPurNotBetween(String value1, String value2) {
            addCriterion("tool_pur not between", value1, value2, "toolPur");
            return (Criteria) this;
        }

        public Criteria andToolStatusIsNull() {
            addCriterion("tool_status is null");
            return (Criteria) this;
        }

        public Criteria andToolStatusIsNotNull() {
            addCriterion("tool_status is not null");
            return (Criteria) this;
        }

        public Criteria andToolStatusEqualTo(String value) {
            addCriterion("tool_status =", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusNotEqualTo(String value) {
            addCriterion("tool_status <>", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusGreaterThan(String value) {
            addCriterion("tool_status >", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusGreaterThanOrEqualTo(String value) {
            addCriterion("tool_status >=", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusLessThan(String value) {
            addCriterion("tool_status <", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusLessThanOrEqualTo(String value) {
            addCriterion("tool_status <=", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusLike(String value) {
            addCriterion("tool_status like", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusNotLike(String value) {
            addCriterion("tool_status not like", value, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusIn(List<String> values) {
            addCriterion("tool_status in", values, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusNotIn(List<String> values) {
            addCriterion("tool_status not in", values, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusBetween(String value1, String value2) {
            addCriterion("tool_status between", value1, value2, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolStatusNotBetween(String value1, String value2) {
            addCriterion("tool_status not between", value1, value2, "toolStatus");
            return (Criteria) this;
        }

        public Criteria andToolLbleIsNull() {
            addCriterion("tool_lble is null");
            return (Criteria) this;
        }

        public Criteria andToolLbleIsNotNull() {
            addCriterion("tool_lble is not null");
            return (Criteria) this;
        }

        public Criteria andToolLbleEqualTo(String value) {
            addCriterion("tool_lble =", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleNotEqualTo(String value) {
            addCriterion("tool_lble <>", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleGreaterThan(String value) {
            addCriterion("tool_lble >", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleGreaterThanOrEqualTo(String value) {
            addCriterion("tool_lble >=", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleLessThan(String value) {
            addCriterion("tool_lble <", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleLessThanOrEqualTo(String value) {
            addCriterion("tool_lble <=", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleLike(String value) {
            addCriterion("tool_lble like", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleNotLike(String value) {
            addCriterion("tool_lble not like", value, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleIn(List<String> values) {
            addCriterion("tool_lble in", values, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleNotIn(List<String> values) {
            addCriterion("tool_lble not in", values, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleBetween(String value1, String value2) {
            addCriterion("tool_lble between", value1, value2, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolLbleNotBetween(String value1, String value2) {
            addCriterion("tool_lble not between", value1, value2, "toolLble");
            return (Criteria) this;
        }

        public Criteria andToolCodeIsNull() {
            addCriterion("tool_code is null");
            return (Criteria) this;
        }

        public Criteria andToolCodeIsNotNull() {
            addCriterion("tool_code is not null");
            return (Criteria) this;
        }

        public Criteria andToolCodeEqualTo(String value) {
            addCriterion("tool_code =", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeNotEqualTo(String value) {
            addCriterion("tool_code <>", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeGreaterThan(String value) {
            addCriterion("tool_code >", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeGreaterThanOrEqualTo(String value) {
            addCriterion("tool_code >=", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeLessThan(String value) {
            addCriterion("tool_code <", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeLessThanOrEqualTo(String value) {
            addCriterion("tool_code <=", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeLike(String value) {
            addCriterion("tool_code like", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeNotLike(String value) {
            addCriterion("tool_code not like", value, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeIn(List<String> values) {
            addCriterion("tool_code in", values, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeNotIn(List<String> values) {
            addCriterion("tool_code not in", values, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeBetween(String value1, String value2) {
            addCriterion("tool_code between", value1, value2, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolCodeNotBetween(String value1, String value2) {
            addCriterion("tool_code not between", value1, value2, "toolCode");
            return (Criteria) this;
        }

        public Criteria andToolWorkIsNull() {
            addCriterion("tool_work is null");
            return (Criteria) this;
        }

        public Criteria andToolWorkIsNotNull() {
            addCriterion("tool_work is not null");
            return (Criteria) this;
        }

        public Criteria andToolWorkEqualTo(String value) {
            addCriterion("tool_work =", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkNotEqualTo(String value) {
            addCriterion("tool_work <>", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkGreaterThan(String value) {
            addCriterion("tool_work >", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkGreaterThanOrEqualTo(String value) {
            addCriterion("tool_work >=", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkLessThan(String value) {
            addCriterion("tool_work <", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkLessThanOrEqualTo(String value) {
            addCriterion("tool_work <=", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkLike(String value) {
            addCriterion("tool_work like", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkNotLike(String value) {
            addCriterion("tool_work not like", value, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkIn(List<String> values) {
            addCriterion("tool_work in", values, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkNotIn(List<String> values) {
            addCriterion("tool_work not in", values, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkBetween(String value1, String value2) {
            addCriterion("tool_work between", value1, value2, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolWorkNotBetween(String value1, String value2) {
            addCriterion("tool_work not between", value1, value2, "toolWork");
            return (Criteria) this;
        }

        public Criteria andToolRemarkIsNull() {
            addCriterion("tool_remark is null");
            return (Criteria) this;
        }

        public Criteria andToolRemarkIsNotNull() {
            addCriterion("tool_remark is not null");
            return (Criteria) this;
        }

        public Criteria andToolRemarkEqualTo(String value) {
            addCriterion("tool_remark =", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkNotEqualTo(String value) {
            addCriterion("tool_remark <>", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkGreaterThan(String value) {
            addCriterion("tool_remark >", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("tool_remark >=", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkLessThan(String value) {
            addCriterion("tool_remark <", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkLessThanOrEqualTo(String value) {
            addCriterion("tool_remark <=", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkLike(String value) {
            addCriterion("tool_remark like", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkNotLike(String value) {
            addCriterion("tool_remark not like", value, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkIn(List<String> values) {
            addCriterion("tool_remark in", values, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkNotIn(List<String> values) {
            addCriterion("tool_remark not in", values, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkBetween(String value1, String value2) {
            addCriterion("tool_remark between", value1, value2, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolRemarkNotBetween(String value1, String value2) {
            addCriterion("tool_remark not between", value1, value2, "toolRemark");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteIsNull() {
            addCriterion("tool_isdelete is null");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteIsNotNull() {
            addCriterion("tool_isdelete is not null");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteEqualTo(Integer value) {
            addCriterion("tool_isdelete =", value, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteNotEqualTo(Integer value) {
            addCriterion("tool_isdelete <>", value, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteGreaterThan(Integer value) {
            addCriterion("tool_isdelete >", value, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteGreaterThanOrEqualTo(Integer value) {
            addCriterion("tool_isdelete >=", value, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteLessThan(Integer value) {
            addCriterion("tool_isdelete <", value, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteLessThanOrEqualTo(Integer value) {
            addCriterion("tool_isdelete <=", value, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteIn(List<Integer> values) {
            addCriterion("tool_isdelete in", values, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteNotIn(List<Integer> values) {
            addCriterion("tool_isdelete not in", values, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteBetween(Integer value1, Integer value2) {
            addCriterion("tool_isdelete between", value1, value2, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolIsdeleteNotBetween(Integer value1, Integer value2) {
            addCriterion("tool_isdelete not between", value1, value2, "toolIsdelete");
            return (Criteria) this;
        }

        public Criteria andToolSortNumIsNull() {
            addCriterion("tool_sort_num is null");
            return (Criteria) this;
        }

        public Criteria andToolSortNumIsNotNull() {
            addCriterion("tool_sort_num is not null");
            return (Criteria) this;
        }

        public Criteria andToolSortNumEqualTo(Integer value) {
            addCriterion("tool_sort_num =", value, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumNotEqualTo(Integer value) {
            addCriterion("tool_sort_num <>", value, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumGreaterThan(Integer value) {
            addCriterion("tool_sort_num >", value, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumGreaterThanOrEqualTo(Integer value) {
            addCriterion("tool_sort_num >=", value, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumLessThan(Integer value) {
            addCriterion("tool_sort_num <", value, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumLessThanOrEqualTo(Integer value) {
            addCriterion("tool_sort_num <=", value, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumIn(List<Integer> values) {
            addCriterion("tool_sort_num in", values, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumNotIn(List<Integer> values) {
            addCriterion("tool_sort_num not in", values, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumBetween(Integer value1, Integer value2) {
            addCriterion("tool_sort_num between", value1, value2, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolSortNumNotBetween(Integer value1, Integer value2) {
            addCriterion("tool_sort_num not between", value1, value2, "toolSortNum");
            return (Criteria) this;
        }

        public Criteria andToolCreUserIsNull() {
            addCriterion("tool_cre_user is null");
            return (Criteria) this;
        }

        public Criteria andToolCreUserIsNotNull() {
            addCriterion("tool_cre_user is not null");
            return (Criteria) this;
        }

        public Criteria andToolCreUserEqualTo(String value) {
            addCriterion("tool_cre_user =", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserNotEqualTo(String value) {
            addCriterion("tool_cre_user <>", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserGreaterThan(String value) {
            addCriterion("tool_cre_user >", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserGreaterThanOrEqualTo(String value) {
            addCriterion("tool_cre_user >=", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserLessThan(String value) {
            addCriterion("tool_cre_user <", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserLessThanOrEqualTo(String value) {
            addCriterion("tool_cre_user <=", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserLike(String value) {
            addCriterion("tool_cre_user like", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserNotLike(String value) {
            addCriterion("tool_cre_user not like", value, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserIn(List<String> values) {
            addCriterion("tool_cre_user in", values, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserNotIn(List<String> values) {
            addCriterion("tool_cre_user not in", values, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserBetween(String value1, String value2) {
            addCriterion("tool_cre_user between", value1, value2, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreUserNotBetween(String value1, String value2) {
            addCriterion("tool_cre_user not between", value1, value2, "toolCreUser");
            return (Criteria) this;
        }

        public Criteria andToolCreDateIsNull() {
            addCriterion("tool_cre_date is null");
            return (Criteria) this;
        }

        public Criteria andToolCreDateIsNotNull() {
            addCriterion("tool_cre_date is not null");
            return (Criteria) this;
        }

        public Criteria andToolCreDateEqualTo(Date value) {
            addCriterion("tool_cre_date =", value, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateNotEqualTo(Date value) {
            addCriterion("tool_cre_date <>", value, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateGreaterThan(Date value) {
            addCriterion("tool_cre_date >", value, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateGreaterThanOrEqualTo(Date value) {
            addCriterion("tool_cre_date >=", value, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateLessThan(Date value) {
            addCriterion("tool_cre_date <", value, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateLessThanOrEqualTo(Date value) {
            addCriterion("tool_cre_date <=", value, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateIn(List<Date> values) {
            addCriterion("tool_cre_date in", values, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateNotIn(List<Date> values) {
            addCriterion("tool_cre_date not in", values, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateBetween(Date value1, Date value2) {
            addCriterion("tool_cre_date between", value1, value2, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolCreDateNotBetween(Date value1, Date value2) {
            addCriterion("tool_cre_date not between", value1, value2, "toolCreDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserIsNull() {
            addCriterion("tool_upd_user is null");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserIsNotNull() {
            addCriterion("tool_upd_user is not null");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserEqualTo(String value) {
            addCriterion("tool_upd_user =", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserNotEqualTo(String value) {
            addCriterion("tool_upd_user <>", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserGreaterThan(String value) {
            addCriterion("tool_upd_user >", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserGreaterThanOrEqualTo(String value) {
            addCriterion("tool_upd_user >=", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserLessThan(String value) {
            addCriterion("tool_upd_user <", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserLessThanOrEqualTo(String value) {
            addCriterion("tool_upd_user <=", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserLike(String value) {
            addCriterion("tool_upd_user like", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserNotLike(String value) {
            addCriterion("tool_upd_user not like", value, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserIn(List<String> values) {
            addCriterion("tool_upd_user in", values, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserNotIn(List<String> values) {
            addCriterion("tool_upd_user not in", values, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserBetween(String value1, String value2) {
            addCriterion("tool_upd_user between", value1, value2, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdUserNotBetween(String value1, String value2) {
            addCriterion("tool_upd_user not between", value1, value2, "toolUpdUser");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateIsNull() {
            addCriterion("tool_upd_date is null");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateIsNotNull() {
            addCriterion("tool_upd_date is not null");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateEqualTo(Date value) {
            addCriterion("tool_upd_date =", value, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateNotEqualTo(Date value) {
            addCriterion("tool_upd_date <>", value, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateGreaterThan(Date value) {
            addCriterion("tool_upd_date >", value, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateGreaterThanOrEqualTo(Date value) {
            addCriterion("tool_upd_date >=", value, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateLessThan(Date value) {
            addCriterion("tool_upd_date <", value, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateLessThanOrEqualTo(Date value) {
            addCriterion("tool_upd_date <=", value, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateIn(List<Date> values) {
            addCriterion("tool_upd_date in", values, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateNotIn(List<Date> values) {
            addCriterion("tool_upd_date not in", values, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateBetween(Date value1, Date value2) {
            addCriterion("tool_upd_date between", value1, value2, "toolUpdDate");
            return (Criteria) this;
        }

        public Criteria andToolUpdDateNotBetween(Date value1, Date value2) {
            addCriterion("tool_upd_date not between", value1, value2, "toolUpdDate");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}